In some communications systems, a mail user agent forms part of a mobile device, for example, a wireless phone or PDA. The device accesses one or more of its electronic mailboxes through a mail agent as part of a mobile office platform, typically a server operative between the source electronic mailboxes and wireless device. The mobile office platform acts as a window onto the electronic mailboxes of the user. These mailboxes can be accessed from the mobile office platform using one of a plurality of protocols such as the Post Office Protocol Version 3 (POP3), the Internet Mail Access Protocol (IMAP), webmail or other proprietary protocol. Additionally, the mail user agent may access the mobile office platform in one of a variety of protocols. For example, the mail office platform can be accessed using the POP3 protocol, IMAP or webmail.
The mobile office platform has a plurality of protocol specific connectors to access electronic mailboxes. For example, one connector could be a POP3 connector for accessing POP3 mailboxes, another connector could be an IMAP connector for accessing IMAP electronic mailboxes, and yet another connector could access mail from an Exchange server.
The mail user agent usually resides on a mobile device, which has limited storage capacity and limited transmission bandwidth. Some users have electronic mailboxes that receive a large number of electronic mail messages. For example, it is not uncommon for some users to have thousands of electronic mail messages contained within an electronic mailbox. Unfortunately, the POP3 protocol used by a mail user agent usually is not intelligent enough and does not have the processing power to request a subset of mail from the mobile office platform. In some instances, the mail user agent retrieves the entire list of message headers before performing any operation.
This results in a number of problems. For example, the mail user agent will not have enough space to hold the message list. Also, any new electronic mail check takes an extended period of time because any function that requires the mail user agent to look at the message list is subject to delays. Also, if a message header is 500 bytes, and the user has 5,000 electronic mail messages in an “IN” box, then on every check of new electronic mail, the mail user agent must retrieve 500 KB of data. This is an exceptionally large amount of data to be retrieved on every check of new electronic mail. Additionally, the battery life of a mobile device is drained as a result of downloading a large message list and any air time charges for the wireless device are increased because of the time required for downloading the entire message list.
Another problem arises as a result of translating from one electronic mail protocol to another electronic mail protocol. Not all electronic mail protocols support the retrieval of subsets of electronic mail headers in a message list. Thus, any service that allows a mail user agent transparent access to electronic mailboxes implemented in a plurality of electronic mail protocols will run into the problem of having to retrieve or store a large number of message headers for uses that have a large number of electronic mail messages. If only protocols that allow retrieval of subsets of electronic mail headers from electronic messages were used, then some of these problems would be eliminated. For example, with IMAP, there would be no problems with (a) new mail checks taking extended periods of time, (b) battery life drainage and (c) increased air charges, because the IMAP would only request a subset of the electronic message list. There would still be a problem, however, with the limited space to hold the data pertaining to the message list in the mobile device and its mail user agent. The mail user agent would have to store the entire message list on the mobile device.